home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / keyb / kbuf11.zip / KBUF.DOC < prev   
Text File  |  1988-11-19  |  2KB  |  45 lines

  1.  
  2. KBUF by Mark Adler  Pasadena, CA  1988.
  3.  
  4. KBUF extends the size of the keyboard queue from 15 to 142 keystrokes.
  5. It is compatible with keyboard stacking programs (such as STACKEY) and
  6. mouse cursor movement simulators (such as PC Systems MOUSESYS).
  7.  
  8. KBUF works by intercepting three interrupts:  the keyboard scan code
  9. interrupt (9), the keyboard service interrupt (16h), and the timer tick
  10. interrupt (8).  On a keyboard service interrupt, KBUF gets keystrokes
  11. from its own queue, instead of from the BIOS's queue.  On a timer tick
  12. interrupt, the BIOS queue is checked for any characters using the
  13. original service routine and if any are found, they are moved to KBUF's
  14. queue, if there is room.  On a keyboard scan code interrupt, the
  15. original scan code routine is called to process the code and then the
  16. above action for the timer interrupt is performed.
  17.  
  18. The program assumes very little about the internals of the BIOS service
  19. routines.  In particular, it does not need to know where the original
  20. queue is, or even how long it is.  In fact, it is possible to load
  21. multiple copies of KBUF to get larger queue sizes (though there is a
  22. better way---see below).
  23.  
  24. The size of the keyboard queue can be increased be reassembling KBUF.ASM
  25. with a new value for kqsz.  If there is interest, a future version of
  26. KBUF might take a command line parameter to select a queue size.
  27.  
  28. KBUF also adds a new function to interrupt 16h---if AH is 0FFh, then the
  29. scan code in DX is put into the queue, behind what is already there
  30. (i.e., as if it were just typed).  This is different from stacking,
  31. which puts the keystroke at the front of the queue.  On return, AL=0
  32. indicates success, AL=1 indicates failure (no room in queue).
  33.  
  34. Version history -
  35.  
  36. 1.0     26 May 1988     First public version
  37. 1.1     18 Nov 1988     Added queue stuff call (AH=0FFh)
  38.  
  39. Feel free to send any problems with or comments on KBUF to:
  40.  
  41.         Mark Adler
  42.         P.O. Box 60998
  43.         Pasadena, CA  91106
  44.  
  45.